package com.maxmlr.mybatisplus.song.entity;

import java.io.Serializable;

import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import com.maxmlr.mybatisplus.common.base.BaseEntity;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import io.swagger.annotations.ApiModelProperty;

/**  
 * @Package com.maxmlr.mybatisplus.song.entity
 * @ClassName Song
 * @Description Song 实体类
 * @author max
 * @since 2019-05-11
 * @version 1.0
 * @Copyright Copyright (c) 2018: www.maxmlr.com.
 */ 
@TableName("song")
public class Song extends BaseEntity {

    private static final long serialVersionUID = 1L;

	@TableId(value="id", type= IdType.AUTO)
	private Integer id;
    /** 专辑id */
	@ApiModelProperty("专辑id")
	@TableField("special_id")
	private Integer specialId;
    /** 歌手id */
	@ApiModelProperty("歌手id")
	@TableField("singer_id")
	private Integer singerId;
    /** 歌曲名称 */
	@ApiModelProperty("歌曲名称")
	@TableField("song_name")
	private String songName;
    /** 歌曲图片 */
	@ApiModelProperty("歌曲图片")
	@TableField("head_img")
	private String headImg;
    /** 歌曲地址 */
	@ApiModelProperty("歌曲地址")
	private String mp3;
    /** MV地址 */
	@ApiModelProperty("MV地址")
	private String mv;
    /** 类型，1 mp3,2 mv,3两者都有,4都没 */
	@ApiModelProperty("类型，1 mp3,2 mv,3两者都有,4都没")
	@TableField("song_type")
	private Integer songType;
    /** 排名，0表示没有排名 */
	@ApiModelProperty("排名，0表示没有排名")
	private Integer ranking;
    /** 发布时间 */
	@ApiModelProperty("发布时间")
	@TableField("release_date")
	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
	private Date releaseDate;
    /** 添加时间 */
	@ApiModelProperty("添加时间")
	@TableField("create_time")
	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
	private Date createTime;
    /** 修改时间 */
	@ApiModelProperty("修改时间")
	@TableField("update_time")
	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
	private Date updateTime;


	public Integer getId() {
		return id;
	}

	public void setId(Integer id) {
		this.id = id;
	}

    /**
     * 获取专辑id
     */
	public Integer getSpecialId() {
		return specialId;
	}

    /**
     * 设置专辑id
     */
	public void setSpecialId(Integer specialId) {
		this.specialId = specialId;
	}

    /**
     * 获取歌手id
     */
	public Integer getSingerId() {
		return singerId;
	}

    /**
     * 设置歌手id
     */
	public void setSingerId(Integer singerId) {
		this.singerId = singerId;
	}

    /**
     * 获取歌曲名称
     */
	public String getSongName() {
		return songName;
	}

    /**
     * 设置歌曲名称
     */
	public void setSongName(String songName) {
		this.songName = songName;
	}

    /**
     * 获取歌曲图片
     */
	public String getHeadImg() {
		return headImg;
	}

    /**
     * 设置歌曲图片
     */
	public void setHeadImg(String headImg) {
		this.headImg = headImg;
	}

    /**
     * 获取歌曲地址
     */
	public String getMp3() {
		return mp3;
	}

    /**
     * 设置歌曲地址
     */
	public void setMp3(String mp3) {
		this.mp3 = mp3;
	}

    /**
     * 获取MV地址
     */
	public String getMv() {
		return mv;
	}

    /**
     * 设置MV地址
     */
	public void setMv(String mv) {
		this.mv = mv;
	}

    /**
     * 获取类型，1 mp3,2 mv,3两者都有,4都没
     */
	public Integer getSongType() {
		return songType;
	}

    /**
     * 设置类型，1 mp3,2 mv,3两者都有,4都没
     */
	public void setSongType(Integer songType) {
		this.songType = songType;
	}

    /**
     * 获取排名，0表示没有排名
     */
	public Integer getRanking() {
		return ranking;
	}

    /**
     * 设置排名，0表示没有排名
     */
	public void setRanking(Integer ranking) {
		this.ranking = ranking;
	}

    /**
     * 获取发布时间
     */
	public Date getReleaseDate() {
		return releaseDate;
	}

    /**
     * 设置发布时间
     */
	public void setReleaseDate(Date releaseDate) {
		this.releaseDate = releaseDate;
	}

    /**
     * 获取添加时间
     */
	public Date getCreateTime() {
		return createTime;
	}

    /**
     * 设置添加时间
     */
	public void setCreateTime(Date createTime) {
		this.createTime = createTime;
	}

    /**
     * 获取修改时间
     */
	public Date getUpdateTime() {
		return updateTime;
	}

    /**
     * 设置修改时间
     */
	public void setUpdateTime(Date updateTime) {
		this.updateTime = updateTime;
	}


	@Override
	public String toString() {
		return "Song{" +
			", id=" + id +
			", specialId=" + specialId +
			", singerId=" + singerId +
			", songName=" + songName +
			", headImg=" + headImg +
			", mp3=" + mp3 +
			", mv=" + mv +
			", songType=" + songType +
			", ranking=" + ranking +
			", releaseDate=" + releaseDate +
			", createTime=" + createTime +
			", updateTime=" + updateTime +
			"}";
	}
}
